package com.service;
import java.util.List;
import java.util.Map;

import com.entity.Scrap;
import com.entity.SysDict;
import com.utils.DataTables;

public interface SysDictService{
	/**
	 * 获得SysDict数据的总行数
	 * @return
	 */
    long getSysDictRowCount();
	/**
	 * 获得SysDict数据集合
	 * @return
	 */
    List<SysDict> selectSysDict();
	/**
	 * 获得一个SysDict对象,以参数SysDict对象中不为空的属性作为条件进行查询
	 * @param obj
	 * @return
	 */
    SysDict selectSysDictByObj(SysDict obj);
	/**
	 * 通过SysDict的id获得SysDict对象
	 * @param id
	 * @return
	 */
    SysDict selectSysDictById(Integer id);
	/**
	 * 插入SysDict到数据库,包括null值
	 * @param value
	 * @return
	 */
    int insertSysDict(SysDict value);
	/**
	 * 插入SysDict中属性值不为null的数据到数据库
	 * @param value
	 * @return
	 */
    int insertNonEmptySysDict(SysDict value);
	/**
	 * 批量插入SysDict到数据库
	 * @param value
	 * @return
	 */
    int insertSysDictByBatch(List<SysDict> value);
	/**
	 * 通过SysDict的id删除SysDict
	 * @param id
	 * @return
	 */
    int deleteSysDictById(Integer id);
	/**
	 * 通过SysDict的id更新SysDict中的数据,包括null值
	 * @param enti
	 * @return
	 */
    int updateSysDictById(SysDict enti);
	/**
	 * 通过SysDict的id更新SysDict中属性不为null的数据
	 * @param enti
	 * @return
	 */
    int updateNonEmptySysDictById(SysDict enti);

	/**
	 * 分页显示列表
	 * @param dataTables
	 * @return
	 */
	DataTables getPageList(DataTables dataTables);

	/**
	 * 修改SysDict
	 * @param sysDict
	 * @return
	 */
	Map<String, Object> updateSysDict(SysDict sysDict);

	/**
	 * 添加SysDict
	 * @param sysDict
	 * @return
	 */
	Map<String, Object> addSysDict(SysDict sysDict);

	Map<String,Object> delScrap(List<Integer> idList);

}